package com.zmj.sy.mom.srv.aps.feign;

import com.zmj.sy.mom.srv.aps.bean.dto.staff.*;
import com.zmj.sy.mom.srv.aps.bean.vo.base.Result;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.GetMapping;

import java.util.List;

@FeignClient(url = "${project.feign.staff-url}", name = "staffApiClient")
public interface StaffApiClient {
    /**
     * @Description:  根据工位查询员工号
     * @return
     */
//    @GetMapping("/staff/staffAssess/getPublicCodeByStation")
//    Result<WorkPlaceUserVo> getPublicCodeByStation(@RequestParam("workPlaceCode") String workPlaceCode);
    /**
     * @Description:  查询员工信息
     * @author: lyh
     * @Param:
     * @date: 2024/9/20 8:54
     */
    @GetMapping("/staff/staff/staffDtoList")
    Result<List<StaffDto>> staffList(@SpringQueryMap StaffDto staffDto);


    /**
     * @Description:  班组查询
     * @author: lyh
     * @Param:
     * @date: 2024/10/16 18:03
     */
    @GetMapping("/staff/team/teamDtoList")
    Result<List<TeamSelectDto>> teamDtoList(@SpringQueryMap TeamSelectDto teamDto);


    /**
     * @Description:  通过工号/姓名查询信息
     * @author: lyh
     * @Param:
     * @date: 2024/9/20 8:54
     */
    @GetMapping("/staff/staff/getStaffList")
    Result<List<StaffDto>> getStaffList(@SpringQueryMap StaffSelectDto staffDto);

    /**
     * 查询所有班组
     * @return
     */
    @GetMapping("/staff/team/listPage")
    Result<StaffPage<StaffTeamListResDto>> teamList(@SpringQueryMap StaffTeamListReqDto reqDto);

    /**
     * 查询所有人员，可以跟据班组ID查询
     */
    @GetMapping("/staff/staff/listPage")
    Result<StaffPage<StaffUserListResDto>> userList(@SpringQueryMap StaffUserListReqDto reqDto);

}
